package cn.maihe.elg.operation.utils;

import cn.maihe.elg.operation.service.system.UserService;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.HashMap;
import java.util.Map;

@Service
public class OrgCodeHandler {
    @Resource
    UserService userService;

    /**
     * 如果是超级用户，但是有输入机构搜索的，可以搜索出任意列表数据
     * 如果不是超级用户，输入什么机构代码都不改变code
     *
     * @param map
     * @return
     */
    public Map getCode(Map map) {
        Map temMap = new HashMap();
        temMap.putAll(map);
        String code = userService.getUserContext().getOrgCode();
        if ("-1".equals(code)) {
            if (map.containsKey("orgCode")) {
                temMap.put("orgCode", map.get("orgCode").toString());
                return temMap;
            }
            temMap.put("orgCode", null);
            return temMap;
        } else {
            temMap.put("orgCode", code);
            return temMap;
        }
    }

    public String getCode(String orgCode) {
        String code = userService.getUserContext().getOrgCode();
        if ("-1".equals(code)) {
            if (orgCode != null || orgCode != "-1") {
                return orgCode;
            }
            return null;
        } else {
            return code;
        }
    }
}
